package com.yuandian.management.mapper;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yuandian.bpm.common.data.datascope.BpmBaseMapper;
import com.yuandian.api.management.entity.ConfWeekdays;
import com.yuandian.management.vo.Weekday;
import com.yuandian.management.vo.WeekdayParams;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 周末及节假日表-Mapper接口
 * @author zfsn
 * @date 2023-7-28
 */
@Mapper
public interface ConfWeekdaysMapper extends BpmBaseMapper<ConfWeekdays> {

	/**
	 * 根据开始时间和结束时间范围查询总数
	 * @param params 请求参数
	 * @return
	 */
	Integer getCountByTimeRange(@Param("params") WeekdayParams params);

	/**
	 * 根据具体的日期，修改工作日和节假日状态
	 * @param params 请求参数
	 * @return
	 */
	Integer updateTypeByDay(@Param("params") WeekdayParams params);

	/**
	 * 根据时间范围，删除数据
	 * @param params 请求参数
	 * @return
	 */
	Integer deleteByTimeRange(@Param("params") WeekdayParams params);

	/**
	 * 分页查询工作日与节假日配置列表
	 * @param page 分页参数
	 * @param params 请求参数
	 * @return
	 */
	Page<Weekday> queryPageWeekday(Page<Weekday> page, @Param("params") WeekdayParams params);

	/**
	 * 不分页查询工作日与节假日配置列表
	 * @param params 请求参数
	 * @return
	 */
	List<Weekday> listWeekday(@Param("params") WeekdayParams params);

}